<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>40 - 拦截器</title>
</head>
<body>
    <script src="./lib/axios.js"></script>
    <script>

        // 拦截器       是 axios 中的一个概念

        // 拦截器本质上就是一个高阶函数

        // 拦截器(高阶函数)用来设置公共功能的  ---->  拦截器就是一个公共函数

        // 在 jQuery 中不能使用拦截器





        // 拦截器使用:
        // 分类
        // a) 请求拦截器        当发送 Ajax 请求的时候, 程序就会自动执行请求拦截器函数
        // b) 响应拦截器        当服务端响应的时候, 程序就会自动执行响应拦截器函数





        // 请求拦截器写法       注意拦截器中的返回值,不要随便修改
        axios.interceptors.request.use(function (config) {
            // 在发送请求之前做些什么
            return config;
        }, function (error) {
            // 对请求错误做些什么
            return Promise.reject(error);
        });


        // 响应拦截器写法       注意拦截器中的返回值,不要随便修改
        axios.interceptors.response.use(function (response) {
            // 对响应数据做点什么
            return response;
        }, function (error) {
            // 对响应错误做点什么
            return Promise.reject(error);
        });


        // 拦截器       只有发送 Ajax 请求的时候, 才会执行
        axios.get('http://www.liulongbin.top:3006/api/get').then(function(res){
            console.log(res);
        });









    </script>
</body>
</html>